﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SIMCObjetoNegocio
{ // PER_NATURALES
    [Serializable]
    public partial class PersonaNatural : Persona
    {
        
        public string Nombres { get; set; }
        
        public string Apellidos { get; set; }
        
        public enumSexo Sexo { get; set; }
        
        public enumEstadoCivil EstadoCivil 
        {
            get
            {
                switch (_EstadoCivil)
                {
                    case "S":
                        return enumEstadoCivil.Soltero;

                    case "C":
                        return enumEstadoCivil.Casado;

                    case "D":
                        return enumEstadoCivil.Divorciado;

                    case "V":
                        return enumEstadoCivil.Viudo;

                    default:
                        throw new ArgumentException(string.Format("No existe el Estado Civil {0}", _EstadoCivil));
                }
            }
            set
            {
                switch (value)
                {
                    case enumEstadoCivil.Soltero:
                        _EstadoCivil = "S";
                        break;

                    case enumEstadoCivil.Casado:
                        _EstadoCivil = "C";
                        break;

                    case enumEstadoCivil.Divorciado:
                        _EstadoCivil = "D";
                        break;

                    case enumEstadoCivil.Viudo:
                        _EstadoCivil = "V";
                        break;

                    default:
                        throw new ArgumentException(string.Format("No existe el Estado Civil {0}", value));
                }
            }
        }
        
        public DateTime? FechaNacimiento  { get; set; }
        
        public DateTime? FechaVencimientoId { get; set; }
        
        public string Titulo { get; set; }
        
        public Telefono Celular { get; set; }
        
        public DireccionElectronica Email { get; set; }
    }

    public partial class PersonaNatural : Persona
    {
        public string _EstadoCivil { get; set; }
    }
}
